package principle.DependenceInversionPrinciple.perfection;

import principle.DependenceInversionPrinciple.origon.BetUser;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
 * @author： pang-yun
 * @date： 2021-08-25 20:29
 * 功能目的 ：用于  随机 抽取 用户
 */

public class DrawRandom implements IDraw{
    @Override
    public List<BetUser> prize(List<BetUser> list, int count) {
       //集合数量很少时 直接返回
        if (list.size()<=count) return list;

        //将次序打乱 随机抽取
        Collections.shuffle(list);

        //新建一个集合 将前几个放到里面
        ArrayList<BetUser> betUsers = new ArrayList<>(count);
        list.stream().limit(count).forEach(a->betUsers.add(a));
        return betUsers;
    }
}
